package com.hyfrogx.modules.sys.service;

import com.hyfrogx.common.base.BaseService;
import com.hyfrogx.modules.sys.entity.SysFileEntity;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.io.File;

/**
 * <p>
 * 文件 服务类
 * </p>
 *
 * @author wanglei
 * @date 2019-07-23 18:36:07
 */
public interface SysFileService extends BaseService<SysFileEntity> {

	File getBasePath();

	/**
	 * 表单上传文件
	 *
	 * @param file
	 * @return
	 */
	String uploadForm(MultipartFile file);

	/**
	 * 获得文件信息
	 *
	 * @param fileId
	 * @return
	 */
	SysFileEntity getByFileId(String fileId);

	/**
	 * 下载文件
	 *
	 * @param response
	 * @param fileId
	 */
	void downloadByFileId(HttpServletResponse response, String fileId);


	/**
	 * 获得试用中的文件
	 *
	 * @param fileId
	 * @return
	 */
	SysFileEntity getUsedByFileId(String fileId);
}
